/*
 * base_task_format.h
 *
 *  Created on: 2014. 4. 8.
 *      Author: wooyoung
 */

#ifndef BASE_TASK_FORMAT_H_
#define BASE_TASK_FORMAT_H_

class BaseTaskFormat
{
public:
	BaseTaskFormat(int priority, int command_id, void* data);
	virtual ~BaseTaskFormat();

	inline int get_command_id() const {
		return command_id_;
	}
	inline int get_priority() const {
		return priority_;
	}
protected:
private:
	const int command_id_;
	const int priority_;
	void* data_;
};

struct TaskOperator {
	inline bool operator()(const BaseTaskFormat* compare1, const BaseTaskFormat* compare2) const
	{
		return compare1->get_priority() > compare2->get_priority() ? true : false;
	}
};

#endif /* BASE_TASK_FORMAT_H_ */
